package com.kb.entity.crm;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.util.Date;

@Data
@TableName("CRM_Shipment")
@Accessors(chain = true)
public class CrmShipment {

    @TableId(value ="recId", type = IdType.AUTO)
    private Integer recId;
    @TableField(value = "notes")
    private String notes;

    @TableField(value = "qtyCollated")
    private Integer qtyCollated;

    @TableField(value = "qtyFree")
    private Integer qtyFree;

    @TableField(value = "qtyInvoiced")
    private Integer qtyInvoiced;

    @TableField(value = "qtyPaid")
    private Integer qtyPaid;
    @TableField(value = "qtyShipped")
    private Integer qtyShipped;

    @TableField(value = "qtyTobeConfirmed")
    private Integer qtyTobeConfirmed;
    @TableField(value = "shipAdd")
    private String shipAdd;
    @TableField(value = "shipDate")
    private Date shipDate;
    @TableField(value = "d478Rkey")
    private Integer d478Rkey;
    @TableField(value = "shipNumber")
    private String shipNumber;
    @TableField(value = "d60Rkey")
    private Integer d60Rkey;
    @TableField(value = "salesOrderId")
    private Integer salesOrderId;

    @TableField(value = "salesOrder")
    private String salesOrder;

    @TableField(value = "amountCollated")
    private BigDecimal amountCollated;

    @TableField(value = "amountInvoiced")
    private BigDecimal amountInvoiced;

    @TableField(value = "amountPaid")
    private BigDecimal amountPaid;
    @TableField(value = "feetopay")
    private BigDecimal feetopay;
    @TableField(value = "IN_OUT")
    private String inOut;

    @TableField(value = "EngFee")
    private BigDecimal engFee;

    @TableField(value = "FilmFee")
    private BigDecimal filmFee;

    @TableField(value = "ToolFee")
    private BigDecimal toolFee;

    @TableField(value = "PnlFee")
    private BigDecimal pnlFee;

    @TableField(value = "RushFee")
    private BigDecimal rushFee;

    @TableField(value = "OtherFee")
    private BigDecimal otherFee;

    @TableField(value = "AddFeeing")
    private BigDecimal addFeeing;

    @TableField(value = "subAmonting")
    private BigDecimal subAmonting;
    @TableField(value = "packingSlipId")
    private Integer packingSlipId;

    @TableField(value = "prgmFlag")
    private Integer prgmFlag;

    @TableField(value = "custcode")
    private String custCode;
    @TableField(value = "customerid")
    private Integer customerid;

    @TableField(value = "Unitprice")
    private BigDecimal unitPrice;
    @TableField(value = "bookset")
    private String bookset;

    @TableField(value = "ActiveFlag")
    private Integer activeFlag;
    @TableField(value = "contractItemId")
    private Integer contractItemId;
    @TableField(value = "warehouseId")
    private Integer warehouseId;

    @TableField(value = "FromContract")
    private Boolean fromContract;
    @TableField(value = "productionNumber")
    private String productionNumber;

    @TableField(value = "boxs")
    private Integer boxs;

    @TableField(value = "perBox")
    private Integer perBox;

    @TableField(value = "nonBoxs")
    private Integer nonBoxs;

    @TableField(value = "nonPerBox")
    private Integer nonPerBox;

    @TableField(value = "limitAmount")
    private BigDecimal limitAmount;

    @TableField(value = "custDocNo")
    private String custDocNo;
    @TableField(value = "deleveryno")
    private String deleveryno;
    @TableField(value = "deleverySup")
    private String deleverySup;
//    @TableField(value = "LAST_MODIF_DATE")
//    private Date lastModifDate;
//    @TableField(value = "k3_sync")
//    private Date k3Sync;

    private String flag;
    @TableField(exist = false)
    //本次对账金额
    private BigDecimal nowAmount;
    @TableField(exist = false)
    private BigDecimal taxRate;
}
